1. Field of the Invention
This invention relates generally to network communications and, more specifically, to an Improved Method for Communication with Real-time Remote Devices over Wide-area Communications Networks.
2. Description of Related Art
It is a common arrangement today and not limited to the manufacturing environment, for a central computing device to control physically remote devices via network communication conduits. In this arrangement, it is possible for a centralized control station to track, monitor and control a series of remote machines or devices. Many times, this arrangement works very well. If we turn to FIG. 1 we can examine how one example of this arrangement might function under the conventional method.
FIG. 1 depicts the conventional communication sequence between the computer and a remote computer-controlled device. As can be seen in FIG. 1, a Computer 10 is in communication with a Device 12, in this case, a machine for placing stickers on Boxes 14 as they are carried through the Device 12 by a Conveyor 16. The Computer 10 communicates with the Device 12 over a Network Conduit 18 to which the Computer 10 and Device 12 are each connected via Network Cables 20. It should be understood that the Network Conduit 18 might be a local area network, but might also be a wide area network. Below the depiction, a series of conventional commands and responses are shown. If the Computer 10 issues Command 100, directing the Device 12 to alert the Computer 10 when a Box 14 is in the proper position, it can be seen that once the box is in Position 102, the Device 12 will issue the Message 104 that a box is now in position. In response, the computer would be expected to issue Command 106 for the Device 12 to apply the sticker and then inform the Computer 10 once the sticker has been applied. Upon receipt of this command, the Device 12 applies the Sticker 108 and then issues the Message 110 that the Sticker 22 has been applied. This method works very well only if we assume that the functioning of the device 12 does not depend on the timely arrival of the commands from the Computer 10. It should be understood that if there is a significant delay between the occurrence of step 102 when the box is in position and the receipt of Command 106 to apply the Sticker 108, the Device 12 might apply the Sticker 22 in the wrong place on the Box 14. Furthermore, the Sticker 22 might not be applied to the Box 14 at all.
As can be seen, and as noted in FIG. 1, the Command 100 is a non-time-dependent message (NTDM). We classify it as such, because the Device 12 does not depend upon the content of this message for its proper operation. Furthermore, the Device 12 Message 110 that the sticker is applied is also a non-time-dependent message since it is simply recording the status. It should be seen however, that Commands 104 and 106 are time-dependent (TDM). We classify these messages and commands as TDM's because, should there be a delay in their transmittal over the Network Conduit 18, the operations of the Device 12 may be severely effected.
It should be understood that most modern networks have a non-deterministic nature and therefore do not allow the devices connected to it to predict an exact delay. As such, it should be noticed that any receipt of a transmitted message over a network actually contains two general delay components. These components are an average network delay, which typically is relatively constant, and is a function of the performance specifications of the network conduit, and communications hardware and software of the computer and device. Since the average network delay is relatively constant, it can be compensated for by simply setting the Device 12 to take the delay into account.
The other component of communications delay is not as easy to manage. This component is known as random network delay, and is typically associated with random delays between data packets being sent between network devices. In the case of random network delays, there truly is little predictability, since they are caused by network productivity issues, spurious delays, or loading issues, among others. To solve this problem, what is necessary is to reallocate or redistribute the decision-making process between the Computer 10 and the Device 12. If we look at FIG. 2, we can examine how this might be done.
FIG. 2 is the depiction of the system of FIG. 1 operating under the improved method of the present invention. As can be seen in FIG. 2, the initial command from the Computer 10, 112 is for Device 12 to apply a sticker to a box that has been positioned and then inform the Computer 10 once this has been completed. In response, once the box is in Position 102, the Device 12 applies a Sticker 108 and then issues the Non-Time-dependent Message 110, that the sticker has been applied. By redistributing this decision making process, it can be seen that both Messages 110 and 112 are non-time-dependent, and therefore network delays would not effect the operations of the Device 12. If we now turn to FIG. 3, we can study how the logic system for the control system of FIG. 1 is arranged.
FIG. 3 is a depiction of the conventional driver systems of the computer and device of FIGS. 1 and 2. As can be seen here, within the Computer 10 and as it applies to the Device 12, one will find a Computer Resident Device Driver System 24. Similarly, within the Device 12, there will be contained a Device Resident Driver System 26. Within the Computer Resident Device Driver System 24, among other things, will be found a series of Non-Time-dependent Commands 28 and Time-dependent Commands 30, as discussed above in connection with FIGS. 1 and 2. Similarly, with the Device Resident Driver System 26, there will be found a series of Non-Time-dependent Responses 32 as well as Time Dependent Responses 34. What is needed is a system depicted by FIG. 4, discussed below.